package org.example.infrastructure.dao;

import cn.bugstack.middleware.db.router.annotation.DBRouter;
import cn.bugstack.middleware.db.router.annotation.DBRouterStrategy;
import org.apache.ibatis.annotations.Mapper;
import org.example.infrastructure.dao.po.RaffleActivity;
import org.example.infrastructure.dao.po.RaffleActivityAccount;
import org.example.infrastructure.dao.po.RaffleActivityCount;

/**
 * @author Fuzhengwei bugstack.cn @小傅哥
 * @description 抽奖活动账户表
 * @create 2024-03-09 10:05
 */
@Mapper
//@DBRouterStrategy(splitTable = true)
public interface IRaffleActivityAccountDao {


    int updateAccountQuota(RaffleActivityAccount raffleActivityAccount);

    void insert(RaffleActivityAccount raffleActivityAccount);


    int updateActivityAccountSubtractionQuota(RaffleActivityAccount raffleActivityAccount);


    void updateActivityAccountMonthSurplusImageQuota(RaffleActivityAccount build);


    void updateActivityAccountDaySurplusImageQuota(RaffleActivityAccount build);

    @DBRouter
    RaffleActivityAccount queryActivityAccountByUserId(RaffleActivityAccount raffleActivityAccountReq);

    RaffleActivityAccount queryAccountByUserId(RaffleActivityAccount raffleActivityAccount);
}
